const static = require("koa-static");
const { UPLOAD_PATH } = require("../config/path");
// const path = require("path");

/* 
  static(root, option)接收两个参数
  root: 为路径，表示文件所在的相对路径
  option: {
    maxage: 浏览器默认的最大缓存时长  max-age, 单位为毫秒，默认值为0，也就是不启用缓存。
    hidden: 是否允许传输隐藏的文件，默认为false， 不传输。
    index: 默认的文件名，默认值为index.html。
    defer: 是否推迟响应，如果为true, koa-static 将会咋其他中间件执行完成之后在执行。
    gzip: 如果客户端支持gzip压缩且资源文件后缀为.gz， 则进行gzip压缩，默认为true, 也就是支持gzip压缩。
    setHeaders: 设置请求头函数，格式为： fn(res, path, stats)。
    extensions: 当资源匹配不到的时候。根据传入的数组参数依次进行匹配，返回匹配到的第一个资源。
  }
*/

function createStaticMiddleware() {
  return static(UPLOAD_PATH);
  // return static(path.join(__dirname, UPLOAD_PATH));
}

module.exports = {
  createStaticMiddleware,
};
